package com.qf.service;

import com.google.gson.Gson;
import com.qf.dao.PublishDao;
import com.qf.entity.Publist;
import com.qf.utils.Result;
import com.qf.utils.Upload;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

public class PublishService {
    /**
     *Released:发布文章的函数
     */
    public String Released(HttpServletRequest req) {
        // 【1】返回数据的实体
        Result result = new Result();
        // 【2】获取一下当前服务器上传图片的地址
        String path = req.getSession().getServletContext().getRealPath("/img");
        // 【3】发布功能 - 由于当前的一个请求提交是属于附带文件类型的提交 - 就需要进行对内容区分
        Publist publist = new Upload().upload_file(path,req);
        // 【4】把文章上传到数据库
        new PublishDao().insertPublist(publist);
        result.setCode("200");
        result.setMsg("上传成功");

        return new Gson().toJson(result);
    }

    public String queryPublist(HttpServletRequest req) {
        Result result = new Result();
        // 调用数据库 - 查询所有publish中的内容
        List<Publist> list_publish = new PublishDao().queryPublist(req);
        // 判断查询结果
        if(list_publish.size()!=0){
            result.setCode("200");
            result.setMsg("查询成功");
            result.setCount(list_publish.size());
            result.setData(new Gson().toJson(list_publish));

        }else {
            result.setCode("500");
            result.setMsg("查询失败");
        }

        return new Gson().toJson(result);
    }

    public String delete_publish(String signD) {
        Result result = new Result();
        int delete_int = new PublishDao().delete_publish(signD);
        if(delete_int == 0){
            result.setCode("500");
            result.setMsg("删除失败");

        }else {
            result.setMsg("删除成功");
            result.setCode("200");
        }


        return new Gson().toJson(result);
    }
}
